\SCREEN MODE=261 LINE=500,510\CALL SETUP_NAMES \CALL INITIALIZE_VALUES \X HELLO_AGAIN\CLEAR ON ERROR \MOVE '1.36' TO VERSION_NUMBER \MOVE 1 TO FIRST_TIME \MOVE 0 TO CURR_PG \MOVE 0 TO FIRST_TIME \BUILD #2010=MACRO_PATH \MOVE PROGRAM_DRIVE_NUMERIC TO X \READ (X):/(#2010)/TUTORIAL.MAC \LINE 0,0,SCREEN_DOT_WIDTH,SCREEN_DOT_HEIGHT,1,BF \CALLM SET_ERROR_ONKEYS \READ (X):/(#2010)/PR_ORDER.MAC \MOVE '242919PW' TO FONT_FLNM\CALLM RD_FON \MOVE 'PISTPUMP' TO HUE_FLNM\CALLM RD_HUE \MOVE 'HARTBEAT' TO HUE_FLNM\CALLM RD_HUE \HUE C=0,255\HUE C=32,32 S=4,4,35\ON KEY F10 JUMP START_TUTORIAL \MOVE 160 TO Q\MOVE 40 TO R\MOVE 860 TO S\MOVE 260 TO T\MOVE 2 TO U\CALLM TUBE_BOX \MOVE 280 TO Q\MOVE 320 TO R\MOVE 744 TO S\MOVE 690 TO T\MOVE 12 TO U\CALLM TUBE_BOX \LOC 300,344\WIDTH 424 DOTS CENTERED\OVER 0,A,46,1 PROGRAMMING AND ARTWORK BY RUSSELL D. HOFFMAN \LOCATE 300,556\OVER 0,A,51,1 COPYRIGHT (C) 1993 THE ANIMATED SOFTWARE COMPANY ALL RIGHTS RESERVED. \IF EMM_AVBL<288 \MOVE 40 TO Q\MOVE 380 TO R\MOVE 220 TO S\MOVE 660 TO T\MOVE 16 TO U\CALLM TUBE_BOX \MOVE '162019PW' TO FONT_FLNM\CALLM RD_FON \LOC 40,380\WIDTH 180 DOTS C\OVER 0,A,40,20\HEIGHT 444 \" This program needs at least 288 pages of EMM RAM - about 4 megabytes. \" You have less than that so we won't be able to animate everything! \" \ENDIF \MOVE 'PUMPLOGO' TO PIC_FLNM\CALLM RD_PIC\IF LAST_ERROR>0\SHOW 200,60,1\ELSE \ROUNDS 1 SPEED 44\SHOW 200,60,13,1\ENDIF \CALL LINEBOX \MOVE 'ASCOLOGO' TO PIC_FLNM\CALLM RD_PIC \ON KEY 7181 JUMP START_TUTORIAL\ON KEY 4096 JUMP QUITIT\ROUNDS 31 SPEED 24 \CALLM WAITBOX \IF LAST_ERROR=0\SHOW 410,447,4,18\ELSE\SHOW 410,447,4\WAIT NOW -1\ENDIF \X START_TUTORIAL\ON KEY 7181\LINE 0,0,1023,768,1,BF \X MAINPAGE\MOVE 'PUMPMENU' TO TEXT_FLNM\CALLM RD_TXT \X QUITIT\ON ERROR\END \X SETUP_NAMES \NAME #1999=TEMP_NUMERIC_LOCATION \NAME #2002=VERSION_NUMBER \NAME #2010=BUILDDRIVE \NAME #2011=BUILDPATH \NAME #2020=CURR_PG \NAME #2021=FIRST_TIME \NAME #2040=READTEXT \NAME #2050=EXECSOUND \NAME #2051=SOUND \NAME #2100=MODULE_ZERO \NAME #2101=MODULE_ONE \NAME #2102=MODULE_TWO \NAME #2103=MODULE_THREE \NAME #2104=MODULE_FOUR \NAME #2105=MODULE_FIVE \NAME #2106=MODULE_SIX \NAME #2107=MODULE_SEVEN \NAME #2108=MODULE_EIGHT \NAME #2109=MODULE_NINE \NAME #2110=MODULE_TEN \NAME #2111=MODULE_ELEVEN \NAME #2112=MODULE_TWELVE \NAME #2202=GLOSSARY_X \NAME #2203=GLOSSARY_Y \NAME #2204=CURRENT_MAIN_TOPIC \NAME #2205=FONT_HEIGHT \NAME #2206=DEF_LOC \NAME #2207=BUILD_GLOSSARY_SCREEN \NAME #2208=DEFINE_WORD \NAME #2212=DRUG_GLOSSARY_X \NAME #2213=DRUG_GLOSSARY_Y \NAME #2214=CURRENT_TOPIC \NAME #2215=CURRENT_COLOR \NAME #2217=SOUND_CONTROL \NAME #2218=SOUND_FAILURE \NAME #2219=SOUND_EXTENSION \NAME #2220=SOUND_PROGRAM \NAME #2221=SOUND_LOADCOMMAND \NAME #2222=SOUND_OUTCOMMAND \NAME #2223=SOUND_STOPCOMMAND \NAME #2224=SOUND_TOGGLE \NAME #2231=INTRO_LOCX \NAME #2232=INTRO_LOCY \NAME #2233=TUBE_COLORS \NAME #2234=SAID_GL_INTRO \NAME #2235=SAID_GL_ENTRY \NAME #2237=PROGRAM_DRIVE \NAME #2238=PROGRAM_DRIVE_NUMERIC \NAME #2241=LASTY_WHERE \NAME #2242=HUE_FLNM \NAME #2243=HUE_PATH \NAME #2244=HUE_DRIVE \NAME #2245=FONT_FLNM \NAME #2246=FONT_PATH \NAME #2247=FONT_DRIVE \NAME #2248=VIDEO_FLNM \NAME #2249=VIDEO_PATH \NAME #2250=VIDEO_DRIVE \NAME #2251=PIC_FLNM \NAME #2252=PICTURE_PATH \NAME #2253=PICTURE_DRIVE \NAME #2254=TEXT_FLNM \NAME #2255=TEXT_PATH \NAME #2256=TEXT_DRIVE \NAME #2257=MACRO_FLNM \NAME #2258=MACRO_PATH \NAME #2259=MACRO_DRIVE \NAME #2260=SOUND_FLNM \NAME #2261=SOUND_PATH \NAME #2262=SOUND_DRIVE \NAME #2270=LASTY_HOW \NAME #2271=LASTY_TYPE \NAME #2272=LASTY_MEASURE \NAME #2273=LASTY_WHICH \NAME #2274=LASTY_HISTORY \NAME #2275=LASTY_AMAZING \NAME #2280=CURR_SUBLEVEL \NAME #2290=PG_UP \NAME #2291=PG_DN \NAME #2301=DEMO_MODE \NAME #2302=LAST_ERROR \NAME #2303=EMM_AVBL \NAME #2304=ERR_DSPL \NAME #2305=LAST_PICFL \RETURN \X INITIALIZE_VALUES \MOVE 'RUSSBRTH' TO SOUND \MOVE 0 TO MODULE_ZERO ;MAIN MENU \MOVE 0 TO MODULE_ONE ;INTRODUCTION \MOVE 0 TO MODULE_TWO \MOVE 0 TO MODULE_THREE \MOVE 0 TO MODULE_FOUR \MOVE 0 TO MODULE_FIVE \MOVE 0 TO MODULE_SIX \MOVE 0 TO MODULE_SEVEN \MOVE 0 TO MODULE_EIGHT \MOVE 0 TO MODULE_NINE \MOVE 0 TO MODULE_TEN \MOVE 0 TO MODULE_ELEVEN \MOVE 0 TO MODULE_TWELVE \MOVE SCREEN_DOT_WIDTH/2 TO GLOSSARY_X \MOVE SCREEN_DOT_HEIGHT/2+6 TO GLOSSARY_Y \MOVE 150 TO CURRENT_MAIN_TOPIC \MOVE 20 TO FONT_HEIGHT \MOVE 143 TO DEF_LOC \MOVE 0 TO BUILD_GLOSSARY_SCREEN \MOVE 'RUSSELL D. HOFFMAN' TO DEFINE_WORD \MOVE SCREEN_DOT_WIDTH/2 TO DRUG_GLOSSARY_X \MOVE SCREEN_DOT_HEIGHT/2+6 TO DRUG_GLOSSARY_Y \MOVE 'PUMPMENU' TO CURRENT_TOPIC \MOVE 45 TO CURRENT_COLOR \MOVE 'OFF' TO SOUND_CONTROL ;leave off until we have a sound-version of this program... \MOVE 0 TO SOUND_FAILURE \MOVE '.VOC' TO SOUND_EXTENSION \MOVE 'C:\SBPRO\SBSIM\VOICE.EXE' TO SOUND_PROGRAM \MOVE ' /LOADXMS:' TO SOUND_LOADCOMMAND \MOVE ' /OUTX:' TO SOUND_OUTCOMMAND \MOVE ' /STOP' TO SOUND_STOPCOMMAND \MOVE '1' TO SOUND_TOGGLE ;IF SET TO SPACES, WONT DO ANYTHING... \MOVE 1 TO FIRST_TIME \MOVE 0 TO CURR_PG \MOVE 0 TO FIRST_TIME \MOVE 'PUMPMENU.TXT' TO READTEXT \MOVE 'PLAY.EXE' TO EXECSOUND \MOVE 330 TO INTRO_LOCX \MOVE 312 TO INTRO_LOCY \MOVE 23 TO TUBE_COLORS ;ALWAYS 23 UNLESS CHANGED... \MOVE 0 TO SAID_GL_INTRO \MOVE 0 TO SAID_GL_ENTRY \MOVE 0 TO LASTY_WHERE \MOVE 0 TO LASTY_HOW \MOVE 0 TO LASTY_TYPE \MOVE 0 TO LASTY_MEASURE \MOVE 0 TO LASTY_WHICH \MOVE 0 TO LASTY_HISTORY \MOVE 0 TO LASTY_AMAZING \MOVE 0 TO CURR_SUBLEVEL \MOVE '\P11\PUMPS\SVGAPUMP\HUES\' TO HUE_PATH \MOVE '\P11\PUMPS\SVGAPUMP\FONTS\' TO FONT_PATH \MOVE '\P11\PUMPS\SVGAPUMP\VIDEOS\' TO VIDEO_PATH \MOVE '\P11\PUMPS\SVGAPUMP\PICTURES\' TO PICTURE_PATH \MOVE '\P11\PUMPS\SVGAPUMP\TEXTS\' TO TEXT_PATH \MOVE '\P11\PUMPS\' TO MACRO_PATH ;NOTE THAT MACROS ARE IN THE TEXTS PATH! \MOVE '\P11\PUMPS\SVGAPUMP\SOUNDS\' TO SOUND_PATH \CALL FIND_PROGRAM_DRIVE \MOVE PROGRAM_DRIVE_NUMERIC TO HUE_DRIVE \MOVE PROGRAM_DRIVE_NUMERIC TO FONT_DRIVE \MOVE PROGRAM_DRIVE_NUMERIC TO VIDEO_DRIVE \MOVE PROGRAM_DRIVE_NUMERIC TO PICTURE_DRIVE \MOVE PROGRAM_DRIVE_NUMERIC TO TEXT_DRIVE \MOVE PROGRAM_DRIVE_NUMERIC TO MACRO_DRIVE \MOVE PROGRAM_DRIVE TO SOUND_DRIVE \MOVE 18688 TO PG_UP \MOVE 20736 TO PG_DN \MOVE 'YES' TO DEMO_MODE \MOVE 0 TO LAST_ERROR \MOVE O TO EMM_AVBL ;NOTE O AS IN OH NOT 0 AS IN ZERO! THIS IS THE VALUE P11 GIVES US AT STARTUP. \MOVE 0 TO ERR_DSPL \MOVE ' ' TO LAST_PICFL \RETURN \X FIND_PROGRAM_DRIVE \* Leaves the current drive in prgm_drv as "A:" etc and IN PGM DRV NMR (a=1, b=2, etc) \MOVE K TO PROGRAM_DRIVE_NUMERIC \IF K=1\MOVE 'A:' TO PROGRAM_DRIVE\ELSE \IF K=2\MOVE 'B:' TO PROGRAM_DRIVE\ELSE \IF K=3\MOVE 'C:' TO PROGRAM_DRIVE\ELSE \IF K=4\MOVE 'D:' TO PROGRAM_DRIVE\ELSE \IF K=5\MOVE 'E:' TO PROGRAM_DRIVE\ELSE \IF K=6\MOVE 'F:' TO PROGRAM_DRIVE\ELSE \IF K=7\MOVE 'G:' TO PROGRAM_DRIVE\ELSE \IF K=8\MOVE 'H:' TO PROGRAM_DRIVE\ELSE \IF K=9\MOVE 'I:' TO PROGRAM_DRIVE\ELSE \MOVE 'J:' TO PROGRAM_DRIVE\ENDIF \OPEN PUMPPATH.DAT \ELIMINATE #2243 \ELIMINATE #2246 \ELIMINATE #2249 \ELIMINATE #2252 \ELIMINATE #2255 \ELIMINATE #2258 \ELIMINATE #2261 \DATA #2243 \DATA #2246 \DATA #2247 \DATA #2252 \DATA #2255 \DATA #2258 \DATA #2261 \CLOSE PUMPPATH.DAT \RETURN \X LINEBOX \MOVE 160 TO Q\MOVE 40 TO R\MOVE 860 TO S\MOVE 260 TO T\MOVE 9 TO V \X LOOP1\LINE 160,R,860-Q,40,V\LINE 160+Q,40,860,R,V\LINE 160,300-R,860-Q,260,V\LINE 160+Q,260,860,300-R,V \ADD 5 TO R\ADD 20 TO Q\IF Q<=700\JUMP LOOP1\ENDIF \RETURN